Security codes are signals sent between base and handset units of cordless phones that ensure that the messages exchanged come from the proper handset or base. In order to work properly, the base should accept only messages from its particular handset, and vice-versa, and not from third party units. Using security codes for data transmission in cordless telephones is well known in the art. The FCC mandates that all cordless telephones have this feature to ensure certain minimum protection against unintentional or unauthorized line seizure. The security of cordless telephones is ensured by rejecting a dialing or command sequence from a user's cordless telephone unless accompanied by a security code that is mutually agreed upon and recognized by the transmitting and receiving ends.
A randomly generated security code is advantageous as it is unpredictable and not only reduces the probability of unauthorized usage but also enhances the exclusion of spurious interfering electrical signals generated by other sources in the vicinity.
The larger the size of the security code, the less likely it is that two randomly generated security codes from two sets of cordless telephones will match. However, large security codes tax the processing and memory resources present in most cordless phones.
Although the use of security codes in cordless telephones is widely known, such security codes have not previously been combined with error detection and recovery mechanisms. Further, such a combination has never been designed to function within the processing and memory constraints currently present in cordless telephones. This combination of security codes to prevent unauthorized access to the cordless phone coupled with error detection and recovery mechanisms presents advantages not present in either feature alone. Further, as these features operate within the memory and processing constraints of current cordless phone systems, only minor modifications need be made to current cordless phones in order to take advantage of the disclosed mechanism.
The method by which error detection recover is combined with security codes for the first time brings into the realm of cordless telephones a sophisticated means to not only protect the data, but to actually detect errors during transmission and to recover from such errors. Previously, only security codes were available with cordless telephones. With the advent of this invention, not only are security codes present in data transmission between cordless telephone handset and base, but error detection and recovery as well. Further, the addition of error detection to the security code and remaining message code does not overwhelm the memory and processing capacities of the cordless telephone. As the security code and command code are sent together within the message code, the probability of introducing errors into the message code is less than if the security, command, and error detection codes were sent separately.
The method employed for the detection and correction of errors ensures efficient utilization of the processing power of the microprocessor in the cordless telephones as the method is simple, yet very effective. Using any one of the other numerous well known methods for error detection and recovery would only result in adding to the cost of the system because they all require larger memories and more processing power than is currently available on the cordless telephones.
It must be noted however that as the cost of computer memory with increased processing speed decreases to the point where including more sophisticated error recovery means become possible, such schemes would still fall within the spirit and scope of our invention. Further, memory and processing capacity will always be limited as it can never be infinite. As cordless phone technology progresses, enhancements to our invention may be made without diverging from the core concepts disclosed herein, allowing data security and integrity to be maintained as the related arts advance.
For the sake of convenience, the means of generating security codes will be discussed separately from the means of generating error detection codes. It must be understood however, that both of them working in tandem constitute an integral part of the communication protocol disclosed herein.